[INFO] fetching crate miniscript 11.0.0...
[INFO] checking miniscript-11.0.0 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate miniscript 11.0.0 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate miniscript 11.0.0 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate miniscript 11.0.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate miniscript 11.0.0
[INFO] tweaked toml for crates.io crate miniscript 11.0.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] crate crates.io crate miniscript 11.0.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_test v1.0.147
[INFO] [stderr]   Downloaded bitcoin-internals v0.2.0
[INFO] [stderr]   Downloaded bech32 v0.10.0-beta
[INFO] [stderr]   Downloaded quote v1.0.0
[INFO] [stderr]   Downloaded hex-conservative v0.1.1
[INFO] [stderr]   Downloaded proc-macro2 v1.0.0
[INFO] [stderr]   Downloaded cc v1.0.28
[INFO] [stderr]   Downloaded secp256k1 v0.28.0
[INFO] [stderr]   Downloaded bitcoin_hashes v0.13.0
[INFO] [stderr]   Downloaded bitcoin v0.31.0
[INFO] [stderr]   Downloaded core2 v0.3.3
[INFO] [stderr]   Downloaded getrandom v0.2.0
[INFO] [stderr]   Downloaded syn v1.0.0
[INFO] [stderr]   Downloaded secp256k1-sys v0.9.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a9763e2d89766e34a648e953dcf1218fee2f7f56372f0e8d87bd58497fddd7fe
[INFO] running `Command { std: "docker" "start" "-a" "a9763e2d89766e34a648e953dcf1218fee2f7f56372f0e8d87bd58497fddd7fe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a9763e2d89766e34a648e953dcf1218fee2f7f56372f0e8d87bd58497fddd7fe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a9763e2d89766e34a648e953dcf1218fee2f7f56372f0e8d87bd58497fddd7fe", kill_on_drop: false }`
[INFO] [stdout] a9763e2d89766e34a648e953dcf1218fee2f7f56372f0e8d87bd58497fddd7fe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9479f2b3c90701b42d94f3c59b2b7bd3daa4078c7891b4ce2c0a924e945c7fee
[INFO] running `Command { std: "docker" "start" "-a" "9479f2b3c90701b42d94f3c59b2b7bd3daa4078c7891b4ce2c0a924e945c7fee", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling getrandom v0.2.0
[INFO] [stderr]     Checking cfg-if v0.1.2
[INFO] [stderr]    Compiling cc v1.0.28
[INFO] [stderr]    Compiling bitcoin-private v0.1.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.8
[INFO] [stderr]    Compiling bitcoin-internals v0.2.0
[INFO] [stderr]    Compiling hex_lit v0.1.1
[INFO] [stderr]    Compiling bitcoin v0.31.0
[INFO] [stderr]     Checking hex-conservative v0.1.1
[INFO] [stderr]    Compiling serde v1.0.103
[INFO] [stderr]     Checking bech32 v0.10.0-beta
[INFO] [stderr]     Checking base64 v0.21.5
[INFO] [stderr]    Compiling serde_test v1.0.147
[INFO] [stderr]     Checking bitcoin_hashes v0.12.0
[INFO] [stderr]     Checking bitcoin_hashes v0.13.0
[INFO] [stderr]    Compiling secp256k1-sys v0.9.0
[INFO] [stderr]     Checking rand_core v0.6.2
[INFO] [stderr]     Checking rand_chacha v0.3.0
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking secp256k1 v0.28.0
[INFO] [stderr]     Checking miniscript v11.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: methods `proprietary` and `unknown` are never used
[INFO] [stdout]     --> src/psbt/mod.rs:1013:8
[INFO] [stdout]      |
[INFO] [stdout] 1004 | trait PsbtFields {
[INFO] [stdout]      |       ---------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 1013 |     fn proprietary(&mut self) -> &mut BTreeMap<psbt::raw::ProprietaryKey, Vec<u8>>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 1014 |     fn unknown(&mut self) -> &mut BTreeMap<psbt::raw::Key, Vec<u8>>;
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/lib.rs:85:9
[INFO] [stdout]      |
[INFO] [stdout] 85   | #![deny(dead_code)]
[INFO] [stdout]      |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `miniscript` (lib) due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: methods `proprietary` and `unknown` are never used
[INFO] [stdout]     --> src/psbt/mod.rs:1013:8
[INFO] [stdout]      |
[INFO] [stdout] 1004 | trait PsbtFields {
[INFO] [stdout]      |       ---------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 1013 |     fn proprietary(&mut self) -> &mut BTreeMap<psbt::raw::ProprietaryKey, Vec<u8>>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 1014 |     fn unknown(&mut self) -> &mut BTreeMap<psbt::raw::Key, Vec<u8>>;
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/lib.rs:85:9
[INFO] [stdout]      |
[INFO] [stdout] 85   | #![deny(dead_code)]
[INFO] [stdout]      |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `miniscript` (lib test) due to 2 previous errors
[INFO] running `Command { std: "docker" "inspect" "9479f2b3c90701b42d94f3c59b2b7bd3daa4078c7891b4ce2c0a924e945c7fee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9479f2b3c90701b42d94f3c59b2b7bd3daa4078c7891b4ce2c0a924e945c7fee", kill_on_drop: false }`
[INFO] [stdout] 9479f2b3c90701b42d94f3c59b2b7bd3daa4078c7891b4ce2c0a924e945c7fee
[INFO] checking miniscript-11.0.0 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate miniscript 11.0.0 into /workspace/builds/worker-1-tc2/source
[INFO] validating manifest of crates.io crate miniscript 11.0.0 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate miniscript 11.0.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate miniscript 11.0.0
[INFO] tweaked toml for crates.io crate miniscript 11.0.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] crate crates.io crate miniscript 11.0.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 71fc099059508961e9b003446a5ba79820f8f20ed989bf90473837d747862bae
[INFO] running `Command { std: "docker" "start" "-a" "71fc099059508961e9b003446a5ba79820f8f20ed989bf90473837d747862bae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "71fc099059508961e9b003446a5ba79820f8f20ed989bf90473837d747862bae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "71fc099059508961e9b003446a5ba79820f8f20ed989bf90473837d747862bae", kill_on_drop: false }`
[INFO] [stdout] 71fc099059508961e9b003446a5ba79820f8f20ed989bf90473837d747862bae
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c759c977614afa964e0a7d9067fd1581a74ba749f6280bc75cbb3a5e2d959769
[INFO] running `Command { std: "docker" "start" "-a" "c759c977614afa964e0a7d9067fd1581a74ba749f6280bc75cbb3a5e2d959769", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling getrandom v0.2.0
[INFO] [stderr]     Checking cfg-if v0.1.2
[INFO] [stderr]    Compiling cc v1.0.28
[INFO] [stderr]    Compiling bitcoin-private v0.1.0
[INFO] [stderr]    Compiling bitcoin-internals v0.2.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.8
[INFO] [stderr]    Compiling hex_lit v0.1.1
[INFO] [stderr]    Compiling bitcoin v0.31.0
[INFO] [stderr]     Checking hex-conservative v0.1.1
[INFO] [stderr]    Compiling serde v1.0.103
[INFO] [stderr]     Checking bech32 v0.10.0-beta
[INFO] [stderr]     Checking base64 v0.21.5
[INFO] [stderr]    Compiling serde_test v1.0.147
[INFO] [stderr]     Checking bitcoin_hashes v0.13.0
[INFO] [stderr]    Compiling secp256k1-sys v0.9.0
[INFO] [stderr]     Checking bitcoin_hashes v0.12.0
[INFO] [stderr]     Checking rand_core v0.6.2
[INFO] [stderr]     Checking rand_chacha v0.3.0
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking secp256k1 v0.28.0
[INFO] [stderr]     Checking miniscript v11.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/descriptor/sortedmulti.rs:71:49
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let pks: Result<Vec<Pk>, _> = tree.args[1..]
[INFO] [stdout]    |                                                 ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/tr.rs:567:23
[INFO] [stdout]     |
[INFO] [stdout] 567 |         let rest = &s[3..s.len() - 1];
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/descriptor/tr.rs:607:43
[INFO] [stdout]     |
[INFO] [stdout] 607 |             .map(|idx| (&inp[..idx], &inp[idx + 1..]))
[INFO] [stdout]     |                                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:222:53
[INFO] [stdout]     |
[INFO] [stdout] 222 |         let unhardened_path = &self.derivation_path[last_hardened_idx..];
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:453:36
[INFO] [stdout]     |
[INFO] [stdout] 453 |                     if !(&key_part[0..2] == "02"
[INFO] [stdout]     |                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:454:38
[INFO] [stdout]     |
[INFO] [stdout] 454 |                         || &key_part[0..2] == "03"
[INFO] [stdout]     |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:455:38
[INFO] [stdout]     |
[INFO] [stdout] 455 |                         || &key_part[0..2] == "04")
[INFO] [stdout]     |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:739:23
[INFO] [stdout]     |
[INFO] [stdout] 739 |     let mut parts = s[1..].split(']');
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:822:37
[INFO] [stdout]     |
[INFO] [stdout] 822 |                     let indexes = p[1..p.len() - 1].split(';');
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/mod.rs:791:61
[INFO] [stdout]     |
[INFO] [stdout] 791 |         let range = if self.has_wildcard() { range } else { 0..1 };
[INFO] [stdout]     |                                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/mod.rs:825:30
[INFO] [stdout]     |
[INFO] [stdout] 825 |                     for _ in 0..xpub.derivation_paths.paths().len() {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/expression.rs:143:64
[INFO] [stdout]     |
[INFO] [stdout] 143 |                 Ok((Tree { name: &sl[..n], args: vec![] }, &sl[n..]))
[INFO] [stdout]     |                                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/expression.rs:149:26
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 sl = &sl[n + 1..];
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/expression.rs:158:34
[INFO] [stdout]     |
[INFO] [stdout] 158 |                     sl = &new_sl[1..];
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/expression.rs:210:14
[INFO] [stdout]     |
[INFO] [stdout] 210 |         if !('1'..='9').contains(&ch) {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/interpreter/inner.rs:121:39
[INFO] [stdout]     |
[INFO] [stdout] 121 |                     pk_from_slice(spk[1..spk.len() - 1].as_bytes(), false)?.into(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/interpreter/inner.rs:198:75
[INFO] [stdout]     |
[INFO] [stdout] 198 |             let output_key = bitcoin::key::XOnlyPublicKey::from_slice(spk[2..].as_bytes())
[INFO] [stdout]     |                                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/iter/tree.rs:155:25
[INFO] [stdout]     |
[INFO] [stdout] 155 |             for idx in (0..n_children).rev() {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/miniscript/astelem.rs:356:79
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 let subs: Result<Vec<Arc<Miniscript<Pk, Ctx>>>, _> = top.args[1..]
[INFO] [stdout]     |                                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/miniscript/astelem.rs:372:56
[INFO] [stdout]     |
[INFO] [stdout] 372 |                 let pks: Result<Vec<Pk>, _> = top.args[1..]
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/miniscript/astelem.rs:563:34
[INFO] [stdout]     |
[INFO] [stdout] 563 |                 for sub in &subs[1..] {
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/decode.rs:446:34
[INFO] [stdout]     |
[INFO] [stdout] 446 |                         for _ in 0..n {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/decode.rs:556:26
[INFO] [stdout]     |
[INFO] [stdout] 556 |                 for _ in 0..n {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/miniscript/lex.rs:219:85
[INFO] [stdout]     |
[INFO] [stdout] 219 | ...                   if script::Builder::new().push_int(v).into_script()[1..].as_bytes()
[INFO] [stdout]     |                                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/satisfy.rs:989:32
[INFO] [stdout]     |
[INFO] [stdout] 989 |         let mut sat_indices = (0..subs.len()).collect::<Vec<_>>();
[INFO] [stdout]     |                                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/miniscript/satisfy.rs:1008:18
[INFO] [stdout]      |
[INFO] [stdout] 1008 |         for i in 0..k {
[INFO] [stdout]      |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/miniscript/satisfy.rs:1121:32
[INFO] [stdout]      |
[INFO] [stdout] 1121 |         let mut sat_indices = (0..subs.len()).collect::<Vec<_>>();
[INFO] [stdout]      |                                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/miniscript/satisfy.rs:1135:18
[INFO] [stdout]      |
[INFO] [stdout] 1135 |         for i in 0..k {
[INFO] [stdout]      |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/miniscript/satisfy.rs:1537:30
[INFO] [stdout]      |
[INFO] [stdout] 1537 |                     for _ in 0..sig_count - k {
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/types/correctness.rs:441:18
[INFO] [stdout]     |
[INFO] [stdout] 441 |         for i in 0..n {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/types/extra_props.rs:759:18
[INFO] [stdout]     |
[INFO] [stdout] 759 |         for i in 0..n {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/types/malleability.rs:266:18
[INFO] [stdout]     |
[INFO] [stdout] 266 |         for i in 0..n {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/mod.rs:473:42
[INFO] [stdout]     |
[INFO] [stdout] 473 |                     Terminal::Thresh(k, (0..subs.len()).map(child_n).collect())
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:582:39
[INFO] [stdout]     |
[INFO] [stdout] 582 |                 And(ref subs) => And((0..subs.len()).map(child_n).collect()),
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:588:62
[INFO] [stdout]     |
[INFO] [stdout] 588 |                 Threshold(ref k, ref subs) => Threshold(*k, (0..subs.len()).map(child_n).collect()),
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:608:44
[INFO] [stdout]     |
[INFO] [stdout] 608 |                 And(ref subs) => Some(And((0..subs.len()).map(child_n).collect())),
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:615:41
[INFO] [stdout]     |
[INFO] [stdout] 615 |                     Some(Threshold(*k, (0..subs.len()).map(child_n).collect()))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:728:33
[INFO] [stdout]     |
[INFO] [stdout] 728 |                     let iter = (0..subs.len()).map(info_for_child_n);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:732:33
[INFO] [stdout]     |
[INFO] [stdout] 732 |                     let iter = (0..subs.len()).map(info_for_child_n);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:736:33
[INFO] [stdout]     |
[INFO] [stdout] 736 |                     let iter = (0..subs.len()).map(info_for_child_n);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:814:61
[INFO] [stdout]     |
[INFO] [stdout] 814 |                     let (atleast_one_safe, all_non_mall) = (0..subs.len())
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:820:71
[INFO] [stdout]     |
[INFO] [stdout] 820 |                     let (all_safe, atleast_one_safe, all_non_mall) = (0..subs.len())
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:828:57
[INFO] [stdout]     |
[INFO] [stdout] 828 |                     let (safe_count, non_mall_count) = (0..subs.len()).map(acc_for_child_n).fold(
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:863:38
[INFO] [stdout]     |
[INFO] [stdout] 863 |                     for sub in &subs[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:873:38
[INFO] [stdout]     |
[INFO] [stdout] 873 |                     for sub in &subs[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:906:38
[INFO] [stdout]     |
[INFO] [stdout] 906 |                     for sub in &subs[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:916:38
[INFO] [stdout]     |
[INFO] [stdout] 916 |                     for sub in &subs[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/policy/concrete.rs:1044:38
[INFO] [stdout]      |
[INFO] [stdout] 1044 |                 for arg in &top.args[1..] {
[INFO] [stdout]      |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/policy/semantic.rs:383:38
[INFO] [stdout]     |
[INFO] [stdout] 383 |                 for arg in &top.args[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/semantic.rs:609:34
[INFO] [stdout]     |
[INFO] [stdout] 609 |                     Some(sublens[0..k].iter().cloned().sum::<usize>())
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/psbt/finalizer.rs:127:14
[INFO] [stdout]     |
[INFO] [stdout] 127 |     for i in 0..psbt.inputs.len() {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/psbt/finalizer.rs:162:56
[INFO] [stdout]     |
[INFO] [stdout] 162 |         match bitcoin::PublicKey::from_slice(&pk_bytes[1..script_pubkey_len - 1]) {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/psbt/finalizer.rs:373:18
[INFO] [stdout]     |
[INFO] [stdout] 373 |     for index in 0..psbt.inputs.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/psbt/mod.rs:602:22
[INFO] [stdout]     |
[INFO] [stdout] 602 |         for index in 0..self.inputs.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/psbt/mod.rs:632:22
[INFO] [stdout]     |
[INFO] [stdout] 632 |         for index in 0..self.inputs.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/descriptor/sortedmulti.rs:71:49
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let pks: Result<Vec<Pk>, _> = tree.args[1..]
[INFO] [stdout]    |                                                 ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/sortedmulti.rs:243:18
[INFO] [stdout]     |
[INFO] [stdout] 243 |         for _ in 0..over {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/tr.rs:567:23
[INFO] [stdout]     |
[INFO] [stdout] 567 |         let rest = &s[3..s.len() - 1];
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/descriptor/tr.rs:607:43
[INFO] [stdout]     |
[INFO] [stdout] 607 |             .map(|idx| (&inp[..idx], &inp[idx + 1..]))
[INFO] [stdout]     |                                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:222:53
[INFO] [stdout]     |
[INFO] [stdout] 222 |         let unhardened_path = &self.derivation_path[last_hardened_idx..];
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:453:36
[INFO] [stdout]     |
[INFO] [stdout] 453 |                     if !(&key_part[0..2] == "02"
[INFO] [stdout]     |                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:454:38
[INFO] [stdout]     |
[INFO] [stdout] 454 |                         || &key_part[0..2] == "03"
[INFO] [stdout]     |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:455:38
[INFO] [stdout]     |
[INFO] [stdout] 455 |                         || &key_part[0..2] == "04")
[INFO] [stdout]     |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:739:23
[INFO] [stdout]     |
[INFO] [stdout] 739 |     let mut parts = s[1..].split(']');
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/key.rs:822:37
[INFO] [stdout]     |
[INFO] [stdout] 822 |                     let indexes = p[1..p.len() - 1].split(';');
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/mod.rs:791:61
[INFO] [stdout]     |
[INFO] [stdout] 791 |         let range = if self.has_wildcard() { range } else { 0..1 };
[INFO] [stdout]     |                                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/descriptor/mod.rs:825:30
[INFO] [stdout]     |
[INFO] [stdout] 825 |                     for _ in 0..xpub.derivation_paths.paths().len() {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/descriptor/mod.rs:1887:84
[INFO] [stdout]      |
[INFO] [stdout] 1887 |         assert_eq!(descriptor.find_derivation_index_for_spk(&secp, &script_at_0_1, 0..1), Ok(None));
[INFO] [stdout]      |                                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/descriptor/mod.rs:1889:77
[INFO] [stdout]      |
[INFO] [stdout] 1889 |             descriptor.find_derivation_index_for_spk(&secp, &script_at_0_1, 0..2),
[INFO] [stdout]      |                                                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/descriptor/mod.rs:1893:77
[INFO] [stdout]      |
[INFO] [stdout] 1893 |             descriptor.find_derivation_index_for_spk(&secp, &script_at_0_1, 0..10),
[INFO] [stdout]      |                                                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/expression.rs:143:64
[INFO] [stdout]     |
[INFO] [stdout] 143 |                 Ok((Tree { name: &sl[..n], args: vec![] }, &sl[n..]))
[INFO] [stdout]     |                                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/expression.rs:149:26
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 sl = &sl[n + 1..];
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/expression.rs:158:34
[INFO] [stdout]     |
[INFO] [stdout] 158 |                     sl = &new_sl[1..];
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/expression.rs:210:14
[INFO] [stdout]     |
[INFO] [stdout] 210 |         if !('1'..='9').contains(&ch) {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/interpreter/inner.rs:121:39
[INFO] [stdout]     |
[INFO] [stdout] 121 |                     pk_from_slice(spk[1..spk.len() - 1].as_bytes(), false)?.into(),
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/interpreter/inner.rs:198:75
[INFO] [stdout]     |
[INFO] [stdout] 198 |             let output_key = bitcoin::key::XOnlyPublicKey::from_slice(spk[2..].as_bytes())
[INFO] [stdout]     |                                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/interpreter/inner.rs:512:56
[INFO] [stdout]     |
[INFO] [stdout] 512 |         assert_eq!(stack, Stack::from(vec![comp.pk_sig[1..].as_bytes().into()]));
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/interpreter/inner.rs:519:58
[INFO] [stdout]     |
[INFO] [stdout] 519 |         assert_eq!(stack, Stack::from(vec![uncomp.pk_sig[1..].as_bytes().into()]));
[INFO] [stdout]     |                                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/interpreter/inner.rs:534:37
[INFO] [stdout]     |
[INFO] [stdout] 534 |         assert_eq!(&err.to_string()[0..12], "parse error:");
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/interpreter/inner.rs:706:37
[INFO] [stdout]     |
[INFO] [stdout] 706 |         assert_eq!(&err.to_string()[0..12], "parse error:");
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/interpreter/inner.rs:768:37
[INFO] [stdout]     |
[INFO] [stdout] 768 |         assert_eq!(&err.to_string()[0..12], "parse error:");
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/interpreter/inner.rs:813:37
[INFO] [stdout]     |
[INFO] [stdout] 813 |         assert_eq!(&err.to_string()[0..12], "parse error:");
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/interpreter/mod.rs:1058:18
[INFO] [stdout]      |
[INFO] [stdout] 1058 |         for i in 1..n + 1 {
[INFO] [stdout]      |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/iter/tree.rs:155:25
[INFO] [stdout]     |
[INFO] [stdout] 155 |             for idx in (0..n_children).rev() {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/miniscript/astelem.rs:356:79
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 let subs: Result<Vec<Arc<Miniscript<Pk, Ctx>>>, _> = top.args[1..]
[INFO] [stdout]     |                                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/miniscript/astelem.rs:372:56
[INFO] [stdout]     |
[INFO] [stdout] 372 |                 let pks: Result<Vec<Pk>, _> = top.args[1..]
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/miniscript/astelem.rs:563:34
[INFO] [stdout]     |
[INFO] [stdout] 563 |                 for sub in &subs[1..] {
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/decode.rs:446:34
[INFO] [stdout]     |
[INFO] [stdout] 446 |                         for _ in 0..n {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/decode.rs:556:26
[INFO] [stdout]     |
[INFO] [stdout] 556 |                 for _ in 0..n {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/iter.rs:226:18
[INFO] [stdout]     |
[INFO] [stdout] 226 |         for i in 1..n + 1 {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/miniscript/lex.rs:219:85
[INFO] [stdout]     |
[INFO] [stdout] 219 | ...                   if script::Builder::new().push_int(v).into_script()[1..].as_bytes()
[INFO] [stdout]     |                                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/satisfy.rs:989:32
[INFO] [stdout]     |
[INFO] [stdout] 989 |         let mut sat_indices = (0..subs.len()).collect::<Vec<_>>();
[INFO] [stdout]     |                                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/miniscript/satisfy.rs:1008:18
[INFO] [stdout]      |
[INFO] [stdout] 1008 |         for i in 0..k {
[INFO] [stdout]      |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/miniscript/satisfy.rs:1121:32
[INFO] [stdout]      |
[INFO] [stdout] 1121 |         let mut sat_indices = (0..subs.len()).collect::<Vec<_>>();
[INFO] [stdout]      |                                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/miniscript/satisfy.rs:1135:18
[INFO] [stdout]      |
[INFO] [stdout] 1135 |         for i in 0..k {
[INFO] [stdout]      |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/miniscript/satisfy.rs:1537:30
[INFO] [stdout]      |
[INFO] [stdout] 1537 |                     for _ in 0..sig_count - k {
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/types/correctness.rs:441:18
[INFO] [stdout]     |
[INFO] [stdout] 441 |         for i in 0..n {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/types/extra_props.rs:759:18
[INFO] [stdout]     |
[INFO] [stdout] 759 |         for i in 0..n {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/types/malleability.rs:266:18
[INFO] [stdout]     |
[INFO] [stdout] 266 |         for i in 0..n {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/mod.rs:473:42
[INFO] [stdout]     |
[INFO] [stdout] 473 |                     Terminal::Thresh(k, (0..subs.len()).map(child_n).collect())
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/miniscript/mod.rs:624:18
[INFO] [stdout]     |
[INFO] [stdout] 624 |         for i in 1..n + 1 {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:582:39
[INFO] [stdout]     |
[INFO] [stdout] 582 |                 And(ref subs) => And((0..subs.len()).map(child_n).collect()),
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:588:62
[INFO] [stdout]     |
[INFO] [stdout] 588 |                 Threshold(ref k, ref subs) => Threshold(*k, (0..subs.len()).map(child_n).collect()),
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:608:44
[INFO] [stdout]     |
[INFO] [stdout] 608 |                 And(ref subs) => Some(And((0..subs.len()).map(child_n).collect())),
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:615:41
[INFO] [stdout]     |
[INFO] [stdout] 615 |                     Some(Threshold(*k, (0..subs.len()).map(child_n).collect()))
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:728:33
[INFO] [stdout]     |
[INFO] [stdout] 728 |                     let iter = (0..subs.len()).map(info_for_child_n);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:732:33
[INFO] [stdout]     |
[INFO] [stdout] 732 |                     let iter = (0..subs.len()).map(info_for_child_n);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:736:33
[INFO] [stdout]     |
[INFO] [stdout] 736 |                     let iter = (0..subs.len()).map(info_for_child_n);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:814:61
[INFO] [stdout]     |
[INFO] [stdout] 814 |                     let (atleast_one_safe, all_non_mall) = (0..subs.len())
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:820:71
[INFO] [stdout]     |
[INFO] [stdout] 820 |                     let (all_safe, atleast_one_safe, all_non_mall) = (0..subs.len())
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:828:57
[INFO] [stdout]     |
[INFO] [stdout] 828 |                     let (safe_count, non_mall_count) = (0..subs.len()).map(acc_for_child_n).fold(
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:863:38
[INFO] [stdout]     |
[INFO] [stdout] 863 |                     for sub in &subs[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:873:38
[INFO] [stdout]     |
[INFO] [stdout] 873 |                     for sub in &subs[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:906:38
[INFO] [stdout]     |
[INFO] [stdout] 906 |                     for sub in &subs[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/policy/concrete.rs:916:38
[INFO] [stdout]     |
[INFO] [stdout] 916 |                     for sub in &subs[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/policy/concrete.rs:1044:38
[INFO] [stdout]      |
[INFO] [stdout] 1044 |                 for arg in &top.args[1..] {
[INFO] [stdout]      |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/policy/semantic.rs:383:38
[INFO] [stdout]     |
[INFO] [stdout] 383 |                 for arg in &top.args[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/policy/semantic.rs:609:34
[INFO] [stdout]     |
[INFO] [stdout] 609 |                     Some(sublens[0..k].iter().cloned().sum::<usize>())
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/psbt/finalizer.rs:127:14
[INFO] [stdout]     |
[INFO] [stdout] 127 |     for i in 0..psbt.inputs.len() {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/psbt/finalizer.rs:162:56
[INFO] [stdout]     |
[INFO] [stdout] 162 |         match bitcoin::PublicKey::from_slice(&pk_bytes[1..script_pubkey_len - 1]) {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/psbt/finalizer.rs:373:18
[INFO] [stdout]     |
[INFO] [stdout] 373 |     for index in 0..psbt.inputs.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/psbt/mod.rs:602:22
[INFO] [stdout]     |
[INFO] [stdout] 602 |         for index in 0..self.inputs.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/psbt/mod.rs:632:22
[INFO] [stdout]     |
[INFO] [stdout] 632 |         for index in 0..self.inputs.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/test_utils.rs:118:14
[INFO] [stdout]     |
[INFO] [stdout] 118 |     for i in 1..n + 1 {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/test_utils.rs:140:24
[INFO] [stdout]     |
[INFO] [stdout] 140 |         for (i, c) in (b'A'..=b'Z').enumerate() {
[INFO] [stdout]     |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/test_utils.rs:171:24
[INFO] [stdout]     |
[INFO] [stdout] 171 |         for (i, c) in (b'A'..b'Z').enumerate() {
[INFO] [stdout]     |                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: methods `proprietary` and `unknown` are never used
[INFO] [stdout]     --> src/psbt/mod.rs:1013:8
[INFO] [stdout]      |
[INFO] [stdout] 1004 | trait PsbtFields {
[INFO] [stdout]      |       ---------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 1013 |     fn proprietary(&mut self) -> &mut BTreeMap<psbt::raw::ProprietaryKey, Vec<u8>>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 1014 |     fn unknown(&mut self) -> &mut BTreeMap<psbt::raw::Key, Vec<u8>>;
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/lib.rs:85:9
[INFO] [stdout]      |
[INFO] [stdout] 85   | #![deny(dead_code)]
[INFO] [stdout]      |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/descriptor/mod.rs:789:16
[INFO] [stdout]     |
[INFO] [stdout] 789 |         range: Range<u32>,
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 55 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `miniscript` (lib) due to 3 previous errors; 55 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: methods `proprietary` and `unknown` are never used
[INFO] [stdout]     --> src/psbt/mod.rs:1013:8
[INFO] [stdout]      |
[INFO] [stdout] 1004 | trait PsbtFields {
[INFO] [stdout]      |       ---------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 1013 |     fn proprietary(&mut self) -> &mut BTreeMap<psbt::raw::ProprietaryKey, Vec<u8>>;
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 1014 |     fn unknown(&mut self) -> &mut BTreeMap<psbt::raw::Key, Vec<u8>>;
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/lib.rs:85:9
[INFO] [stdout]      |
[INFO] [stdout] 85   | #![deny(dead_code)]
[INFO] [stdout]      |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 71 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `miniscript` (lib test) due to 2 previous errors; 71 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "c759c977614afa964e0a7d9067fd1581a74ba749f6280bc75cbb3a5e2d959769", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c759c977614afa964e0a7d9067fd1581a74ba749f6280bc75cbb3a5e2d959769", kill_on_drop: false }`
[INFO] [stdout] c759c977614afa964e0a7d9067fd1581a74ba749f6280bc75cbb3a5e2d959769
